/*
 * @Description: Chat客户端
 * @Author: rendc
 * @Date: 2025-03-18 14:37:37
 * @LastEditors: rendc
 * @LastEditTime: 2025-03-18 15:04:42
 */

import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.Socket;
import java.util.Scanner;

public class ChatClient {
  public static void main(String[] args) throws Exception {
    // 创建客户端对象，连接服务器
    // 指定服务器的ip 端口 8888
    // 注意这里的ip和端口都是服务器规定好的
    // 企业级专线 固定ip
    Socket client = new Socket("127.0.0.1", 8888);
    System.out.println("客户端：启动成功");
    // System.out.println("客户端：启动成功" + client);
    // 获取IO流
    InputStream is = client.getInputStream();
    OutputStream os = client.getOutputStream();
    // 增强流
    PrintStream ps = new PrintStream(os);
    // 给服务器端发送数据
    // 从键盘录入字符串
    Scanner sc = new Scanner(System.in);
    // 获取输入的字符串
    String string = null;
    while (true) {
      System.out.println("客户端：请输入要发送的消息字符串，输入\"quit\"退出");
      string = sc.nextLine();
      // {
      // 我的qq号:123,
      // 对方的qq号:223,
      // 消息内容："你好"
      // }
      // System.out.println("客户端：输入的字符串:" + string);
      // 遇到quit退出系统
      if ("quit".equals(string)) {
        break;
      }
      // 将字符串写到输出流
      ps.println(string);
    }
    // 关闭资源 - 注意处理异常 - 注意判空
    System.out.println("客户端：即将退出");
    os.close();
    is.close();
    client.close();
    sc.close();
  }
}